﻿# -*- coding: utf-8 -*-

#第五章 条件 循环和其他语句

#(1) print 
name='wangweiya'
greeting='hello,'
print greeting,name   #hello, wangweiya 
print greeting+'good morning,',name  #hello,good morning, wangweiya  说明：','号会产生一个空格

#(2) import  导入 从模块导入函数的时候，通常可以用
'''  
import somemodule
from somemodule import somefunction
from somemodule import somefunction,anotherfunction
from somemodule import *
'''

#也可以为它起别名
import math as footbar
print footbar.floor(-3.1)  

#或者为函数提供别名
from math import floor as footbar1
print footbar1(-3.2)

#如果两个模块都有open函数，可以像下面这样使用：
"""from module import open as open1
   from module import open as open2"""


#(3) 序列解包
x,y,z=1,2,3
print x,y,z  #1 2 3

x,y=y,x
print x,y,z  #2 1 3

values=(1,2,3)
x1,y1,z1=values
print x1,y1,z1 # 1 2 3

names={'name1':'wangweiya','name2':'wangkun'}
key,value=names.popitem()
print key,value  # name2 wangkun
print names  #{'name1': 'wangweiya'}

#(4)链式赋值
#x=y=somefunction()

#和下面的效果是一样的：
#x=somefunction
#y=x1

#(5) 增量赋值(augmented assignment)
x=2
x+=2;    x*=2;   x/=2;  x%=2;

#其他数据类型也适用：
name='xyz'
name+=name  # xyzxyz
name*=2     # xyzxyz

#(6)boolean 布尔值    (False,None,(),{},[],0,"")这些会被解释器看做是False
True==1;print True          #True
False==0; print False       #False

#bool函数可以用来转换(list,str,tuple)其他值
print bool('my name is wangweiya') #True
print bool({})  #False
print bool(0) #False
#注意：尽管 bool("")==bool([])==bool({})  但是他们本身并不相等，也就是说   ""!=[]!={}

#(7)  字符串进行比较(按照字母顺序排列进行比较)
str1='abc'
str2='bcd'
print str1>str2  #False
print '**********************'

'''
#(8) if else 
name2=raw_input('what is your name:')
if name2.endswith('ya'):
    print name2
else:
    print 'wangkun'

#(9)if elif else    demo:分数在90分以上为优秀，在60分以上为合格，低于60为不合格
score=raw_input('what is youre score:')
#score=int(score)
if score>=90:
    print '优秀'.decode('utf-8')
elif score<90 and score>=60:
    print '及格'.decode('utf-8')
else:
    print '不合格'.decode('utf-8')
	
#if elif else 嵌套代码块   demo：如果你超过18岁并且身高在170以上可以进入网吧。
age=raw_input('what is your age:')
age=int(age)
if age>=18:
    height=raw_input('what is your height(cm):')
    height=int(height)
    if height>=170:
	    print '您的年龄和身高都符合上网的条件，祝你上网愉快'.decode('utf-8')
    else:
	    print '您的身高不符合上网条件，禁止入内。'.decode('utf-8')
else:
    print '未满18周岁禁止入内。'.decode('utf-8')


#(10) is 同一性运算符(比较是不是同一对象)  判定同一性而不是相等性
x=y=[1,2,3]
z=[1,2,3]
x==y==z  #True
x is y  #True
x is z  #False
'''

#for 循环
names=['name1','name2','name3','name4']
for name in names:
    print name,  #循环遍历names
print 	
nums=[1,2,3,4,5]
for num in nums:
    print num,
print
for numbers in  range(0,10):
    print numbers,
print

#遍历所有的键
ages={'age1':15,'age2':16,'age3':17}
for age in ages:
    print age+':'+str(ages[age]),
print
#通过items方法可以获得键-值
for key,value in ages.items():
    print key+':'+str(value),
print


"""
#练习 
(1)打印1-100的数字
x9=1
while x9<=100:
    print x9,
    x9 += 1
(2)打印用户需要的纸张的数量
pages=input('How much paper do you want?')
for x in range(1,pages+1):
    print ('打印第%s'% x+'张纸').decode('utf-8')
"""







	





















